/**
 * Created by PanJiaChen on 16/11/18.
 */

/**
 * @param {string} path
 * @returns {Boolean}
 */
export function isExternal(path) {
  return /^(https?:|mailto:|tel:)/.test(path)
}

/**
   * @用户名
   * @param { String } name
   * @return { Boolean }
   */
export function validName(name) {
  const reg = /^[A-Za-z][A-Za-z0-9]{3,14}$/
  return reg.test(name)
}

/**
   * @身份证号
   * @param { String } id
   * @return { Boolean }
   */
export function validIDCard(id) {
  // if (id?.length >= 10) return true // 测试暂时修改
  const reg = new RegExp(/(^\d{8}(0\d|10|11|12)([0-2]\d|30|31)\d{3}$)|(^\d{6}(18|19|20)\d{2}(0\d|10|11|12)([0-2]\d|30|31)\d{3}(\d|X|x)$)/)
  return reg.test(id)
}

/**
   * @手机号
   * @param { String } phone
   * @return { Boolear }
   */
export function validPhone(phone) {
  // const reg = /^[1][3,4,5,7,8]\d{9}$/
  const reg = /^1\d{10}$/
  return reg.test(phone)
}

/**
   * @正整数
   * @param { String } number
   * @return { Boolear }
   */
export function validNumber(number) {
  // const reg = /^[1][3,4,5,7,8]\d{9}$/
  const reg = /^[0-9]*[1-9][0-9]*$/
  return reg.test(number)
}

/**
   * @数字
   * @param { String } num
   * @return { Boolear }
   */
export function validNum(num) {
  // const reg = /^[1][3,4,5,7,8]\d{9}$/
  const reg = /^(([0-9]+\.[0-9]*[1-9][0-9]*)|([0-9]*[1-9][0-9]*\.[0-9]+)|([0-9]*[1-9][0-9]*))$/
  return reg.test(num)
}

// 大于等于0的数字
export function validNum1(num) {
  // const reg = /^[1][3,4,5,7,8]\d{9}$/
  const reg = /^[0-9]+([.]{0,1}[0-9]+){0,1}$/
  return reg.test(num)
}

// 8-16位，数字、字母、字符至少包含两种密码
export function validPassword(val) {
  const reg = /^(?![0-9]+$)(?![a-zA-Z]+$)[0-9A-Za-z]{8,16}$/
  return reg.test(val)
}
